home *** CD-ROM | disk | FTP | other *** search
/ Workbench Add-On / Workbench Add-On - Volume 1.iso / BBS-Archive / Comm / AmiTCP30b2.lha / src / netlib / Smakefile < prev    next >
Makefile  |  1994-04-13  |  8KB  |  281 lines

  1. # $Id: Smakefile,v 3.12 1994/04/12 22:05:32 jraja Exp $
  2. #
  3. # Smakefile for AmiTCP/IP network support library 
  4. #
  5. # Copyright © 1993 AmiTCP/IP Group, <amitcp-group@hut.fi>
  6. #           Helsinki University of Technology, Finland.
  7. #           All rights reserved. 
  8. #
  9. # Created      : Sat Mar 20 02:44:57 1993 ppessi
  10. # Last modified: Sat Apr  2 14:57:09 1994 jraja
  11. #
  12. # $Log: Smakefile,v $
  13. # Revision 3.12  1994/04/12  22:05:32  jraja
  14. # Added module set_socket_stdio.c
  15. #
  16. # Revision 3.9  1994/04/02  12:01:36  jraja
  17. # Removed getherrno.c
  18. #
  19. # Revision 3.8  1994/03/29  12:56:35  ppessi
  20. # Added usergroup interface files, more unix IO files,
  21. # circumvented "autodoc" argument count restrictions
  22. #
  23. # Revision 3.7  1994/03/24  16:33:42  jraja
  24. # added many files, removed short int libraries (ppessi).
  25. #
  26. # Revision 3.6  1994/03/22  09:09:05  jraja
  27. # Added unix io style modules: _allocufb.c, _chkufb.c, _close.c, _lseek.c,
  28. # _open.c, _read.c, _write.c, fhopen.c, ioctl.c, iomode.c, isatty.c and
  29. # stat.c.
  30. #
  31. # Revision 3.5  1994/02/27  15:03:31  jraja
  32. # Added getherrno.c.
  33. #
  34. # Revision 3.4  1994/02/25  15:03:41  ppessi
  35. # changed the install rules
  36. #
  37. # Revision 3.3  1994/02/16  08:02:36  jraja
  38. # Added herror.*, added stubs.*o and perror.*o to the proper places.
  39. #
  40. # Revision 3.2  1994/02/03  19:21:15  ppessi
  41. # Removed far, small and debugging libraries from normal installation.
  42. #
  43. # Revision 3.1  1994/01/24  00:34:26  jraja
  44. # Removed errlst.c and gethostname.c,
  45. # added strerror.c and syslog.c
  46. #
  47. # Revision 1.17  1994/01/21  12:02:11  ppessi
  48. # Removed old link library get*ent() stuff. Added rcmd()
  49. #
  50. # Revision 1.16  1993/11/21  13:25:44  jraja
  51. # Commented autodoc installation, since the docs are incomplete.
  52. #
  53. # Revision 1.15  1993/10/20  05:42:26  ppessi
  54. # Added autodoc extraction.
  55. #
  56. # Revision 1.14  1993/10/18  06:13:15  jraja
  57. # Added timerinit.c and gettimeofday.c.
  58. #
  59. # Revision 1.13  1993/10/15  01:14:47  ppessi
  60. # Changed compilation mechanism, added debugging libraries.
  61. #
  62. # Revision 1.12  1993/10/14  00:05:35  ppessi
  63. # SCOPTIONS is now created automatically from Smakefile
  64. # Added user database handling functions.
  65. # Added a new `install' target.
  66. #
  67. # ...
  68. #
  69. # Revision 1.1  93/03/22  03:23:54  03:23:54  ppessi (Pekka Pessi)
  70. # Initial revision
  71. #
  72.  
  73. DEST = AmiTCP:
  74.  
  75. MAKE = smake
  76.  
  77. RM= delete
  78. RM_RECURSIVE= delete all
  79. MKDIR= makedir
  80. CP= copy dates
  81.  
  82. CC= sc
  83. LD= slink
  84. AUTODOC= autodoc -c -C -I -t8
  85.  
  86. OFLAGS= Optimize 
  87. GFLAGS= NoOptimize Debug=fullflush
  88.  
  89. CFLAGS=    DATA=NEAR
  90. CFLAGS_NB= DATA=FAR
  91. CFLAGS_S=  DATA=NEAR SHORTINTS 
  92.  
  93. DEFS= DEF "RCS_ID_C=//" DEF AMITCP=1 DEF NETLIB=1 \
  94.       DEF __USE_SYSBASE=1 DEF USE_BUILTIN_MATH=1
  95.  
  96. IDIRS= IDIR=netinclude: 
  97. SCOPTIONS= parm=BOTH Nostackcheck \
  98.     Stringmerge Noerrorsource Nomultipleincludes Structureequivalence \
  99.     noversion noerrorhighlight IGNORE=224 IGNORE=92 \
  100.     optinl optinlocal opttime optcomp=5 optdep=5 optrdep=5 \
  101.      $(IDIRS) $(DEFS) debug=line
  102.  
  103. #
  104. # Note: sources with leading underscore "_" are specific with SAS C UFB 
  105. # As the standard autodoc extractor is broken (it allows only for 32 arguments)
  106. # don't add sources with autodocs to the end of macro
  107. #
  108. DOCSRC= autoinit.c gettimeofday.c herror.c \
  109.     lineread.c perror.c printfault.c rcmd.c strerror.c \
  110.     syslog.c timerinit.c dostat.c utime.c chmod.c _dup.c _dup2.c \
  111.     chown.c printuserfault.c init_usergroup.c \
  112.     popen.c sleep.c usleep.c \
  113.     init_inet_daemon.c set_socket_stdio.c serveraccept.c
  114.  
  115. NETLIBSRC= strerror.c autoinit.c dummy.c lineread.c \
  116.         getopt.c printfault.c stubs.c perror.c herror.c \
  117.         timerinit.c gettimeofday.c rcmd.c syslog.c \
  118.         getpid.c chmod.c chown.c utime.c popen.c sleep.c usleep.c \
  119.     printuserfault.c init_usergroup.c setegid.c seteuid.c \
  120.     _dup.c _dup2.c stat.c _fstat.c fib.c dostat.c access.c \
  121.         _allocufb.c _chkufb.c _close.c _lseek.c _open.c _read.c \
  122.         _write.c fhopen.c ioctl.c iomode.c isatty.c \
  123.     init_inet_daemon.c set_socket_stdio.c serveraccept.c
  124.  
  125. SANA2LIBSRC= sana2perror.c sana2errlist.c sana2printfault.c
  126.  
  127. DOCS= netlib.doc sana2lib.doc
  128.  
  129. LIBS= net.lib sana2.lib
  130.  
  131. FARLIBS= netnb.lib sana2nb.lib 
  132.  
  133. DLIBS= gnet.lib gsana2.lib
  134.  
  135. DFARLIBS= gnetnb.lib gsana2nb.lib 
  136.  
  137. NETOBJ= strerror.o autoinit.o dummy.o lineread.o \
  138.         getopt.o printfault.o stubs.o perror.o herror.o \
  139.         timerinit.o gettimeofday.o rcmd.o syslog.o \
  140.         getpid.o chmod.o chown.o utime.o popen.o sleep.o usleep.o \
  141.     printuserfault.o init_usergroup.o setegid.o seteuid.o \
  142.     _dup.o _dup2.o stat.o _fstat.o fib.o dostat.o access.o \
  143.         _allocufb.o _chkufb.o _close.o _lseek.o _open.o _read.o \
  144.         _write.o fhopen.o ioctl.o iomode.o isatty.o \
  145.     init_inet_daemon.o set_socket_stdio.o serveraccept.o
  146.  
  147. NETNBOBJ=  strerror.nbo autoinit.nbo dummy.nbo lineread.nbo \
  148.         getopt.nbo printfault.nbo stubs.nbo perror.nbo herror.nbo \
  149.         timerinit.nbo gettimeofday.nbo rcmd.nbo syslog.nbo \
  150.         getpid.nbo chmod.nbo chown.nbo utime.nbo popen.nbo sleep.nbo usleep.nbo \
  151.     printuserfault.nbo init_usergroup.nbo setegid.nbo seteuid.nbo \
  152.     _dup.nbo _dup2.nbo stat.nbo _fstat.nbo fib.nbo dostat.nbo access.nbo \
  153.         _allocufb.nbo _chkufb.nbo _close.nbo _lseek.nbo _open.nbo _read.nbo \
  154.         _write.nbo fhopen.nbo ioctl.nbo iomode.nbo isatty.nbo \
  155.     init_inet_daemon.nbo set_socket_stdio.nbo serveraccept.nbo
  156.  
  157. SANA2OBJ=   sana2perror.o   sana2errlist.o   sana2printfault.o
  158. SANA2NBOBJ= sana2perror.nbo sana2errlist.nbo sana2printfault.nbo
  159.  
  160. GNETOBJ= strerror.go autoinit.go dummy.go lineread.go \
  161.         getopt.go printfault.go stubs.go perror.go herror.go \
  162.         timerinit.go gettimeofday.go rcmd.go syslog.go \
  163.         getpid.go chmod.go chown.go utime.go popen.go sleep.go usleep.go \
  164.     printuserfault.go init_usergroup.go setegid.go seteuid.go \
  165.     _dup.go _dup2.go stat.go _fstat.go fib.go dostat.go access.go \
  166.         _allocufb.go _chkufb.go _close.go _lseek.go _open.go _read.go \
  167.         _write.go fhopen.go ioctl.go iomode.go isatty.go \
  168.     init_inet_daemon.go set_socket_stdio.go serveraccept.go
  169.  
  170. GNETNBOBJ=  strerror.gnbo autoinit.gnbo dummy.gnbo lineread.gnbo \
  171.         getopt.gnbo printfault.gnbo stubs.gnbo perror.gnbo herror.gnbo \
  172.         timerinit.gnbo gettimeofday.gnbo rcmd.gnbo syslog.gnbo \
  173.         getpid.gnbo chmod.gnbo chown.gnbo utime.gnbo popen.gnbo sleep.gnbo usleep.gnbo \
  174.     printuserfault.gnbo init_usergroup.gnbo setegid.gnbo seteuid.gnbo \
  175.     _dup.gnbo _dup2.gnbo stat.gnbo _fstat.gnbo fib.gnbo dostat.gnbo access.gnbo \
  176.         _allocufb.gnbo _chkufb.gnbo _close.gnbo _lseek.gnbo _open.gnbo _read.gnbo \
  177.         _write.gnbo fhopen.gnbo ioctl.gnbo iomode.gnbo isatty.gnbo \
  178.     init_inet_daemon.gnbo set_socket_stdio.gnbo serveraccept.gnbo
  179.  
  180.  
  181. GSANA2OBJ=   sana2perror.go   sana2errlist.go   sana2printfault.go
  182. GSANA2NBOBJ= sana2perror.gnbo sana2errlist.gnbo sana2printfault.gnbo
  183.  
  184. .SUFFIXES: .c .o .go .nbo .gnbo
  185. #
  186. # Generic rules
  187. #
  188. .c.o:
  189.     $(CC) $(CFLAGS) $(OFLAGS) $*.c
  190. .c.nbo:
  191.     $(CC) $(CFLAGS_NB) $(OFLAGS) $*.c OBJNAME=$*.nbo
  192. .c.so:
  193.     $(CC) $(CFLAGS_S) $(OFLAGS) $*.c  OBJNAME=$*.so
  194. .c.go:
  195.     $(CC) $(CFLAGS) $(GFLAGS) $*.c OBJNAME=$*.go
  196. .c.gnbo:
  197.     $(CC) $(CFLAGS_NB) $(GFLAGS) $*.c OBJNAME=$*.gnbo
  198. .c.gso:
  199.     $(CC) $(CFLAGS_S) $(GFLAGS) $*.c  OBJNAME=$*.gso
  200.  
  201. normal: SCOPTIONS $(LIBS) $(DOCS)
  202.  
  203. all: normal $(FARLIBS)
  204.  
  205. debug: SCOPTIONS $(DLIBS) $(DFARLIBS)
  206.  
  207. install:  normal $(DEST)netlib $(DEST)doc
  208.     $(CP) $(LIBS) $(DEST)netlib
  209.     $(CP) $(DOCS) $(DEST)doc
  210. install-all:  all install $(DEST)netlib
  211.     $(CP) $(FARLIBS) $(DEST)netlib
  212. install-debug: debug $(DEST)netlib 
  213.     $(CP) $(DLIBS) $(DFARLIBS) $(DEST)netlib 
  214.  
  215. $(DEST)netlib:
  216.     -$(MKDIR) $@
  217. $(DEST)doc:
  218.     -$(MKDIR) $@
  219.     
  220. netlib.doc: $(NETLIBSRC)
  221.     $(AUTODOC) $(DOCSRC) >$@
  222. sana2lib.doc: $(SANA2LIBSRC)
  223.     $(AUTODOC) $(SANA2LIBSRC) >$@
  224.  
  225. SCOPTIONS: Smakefile
  226.     copy to $@ <from < 
  227. $(SCOPTIONS) 
  228. <
  229.  
  230. #
  231. # Network libraries
  232. #
  233. net.lib: $(NETOBJ)
  234.     -$(RM) $@
  235.     oml $@ r <@<
  236. $(NETOBJ)
  237. <
  238.  
  239. netnb.lib: $(NETNBOBJ)
  240.     -$(RM) $@
  241.     oml $@ r <@<
  242. $(NETNBOBJ)
  243. <
  244.  
  245. #
  246. # Sana2.lib, convenience functions for Sana2 utilities
  247. #
  248. sana2.lib: $(SANA2OBJ)
  249.     -$(RM) $@
  250.     oml $@ r $(SANA2OBJ)
  251. sana2nb.lib: $(SANA2NBOBJ)
  252.     -$(RM) $@
  253.     oml $@ r $(SANA2NBOBJ)
  254. #
  255. # Debugging libraries
  256. #
  257. gnet.lib: $(GNETOBJ)
  258.     -$(RM) $@
  259.     oml $@ r <@<
  260. $(GNETOBJ)
  261. <
  262.  
  263. gnetnb.lib: $(GNETNBOBJ)
  264.     -$(RM) $@
  265.     oml $@ r <@<
  266. $(GNETNBOBJ)
  267. <
  268.  
  269. gsana2.lib: $(GSANA2OBJ)
  270.     -$(RM) $@
  271.     oml $@ r $(GSANA2OBJ)
  272. gsana2nb.lib: $(GSANA2NBOBJ)
  273.     -$(RM) $@
  274.     oml $@ r $(GSANA2NBOBJ)
  275.  
  276. clean:
  277.     -$(RM) \#?.(lib|o|nbo|so|go|gnbo|gso) SCOPTIONS
  278.  
  279. # DO NOT DELETE THIS LINE -- make depend depends on it.
  280.